


#include <iostream>
using namespace std;

//class Stack
//{
//public:
//	Stack()
//	{
//		_a = (int*)malloc(sizeof(int) * 4);
//		if (_a == nullptr)
//		{
//			perror("malloc fail");
//			return;
//		}
//		_capacity =0;
//		_size = 0;
//	}
//
//	/*Stack(const Stack& s1)
//	{
//
//	}*/
//
//	//Stack(int n = 4)
//	//{
//
//	//}
//
//
//	bool operator==(Stack s1)
//	{
//		return this->_size == s1._size;
//	}
//
//	void Print()
//	{
//		cout << "Stack::Print()" << endl;
//	}
//
//	/*~Stack()
//	{
//		free(_a);
//		_a = nullptr;
//		_capacity = 0;
//		_size = 0;
//	}*/
//
//private:
//	int* _a;
//	int _capacity;
//	int _size;
//};

//
//
//int main()
//{
//	/*Stack st1;
//	Stack st2;
//	Stack s = st1;
//
//	if (st1 == st2)
//	{
//		cout << "true" << endl;
//	}
//	else
//	{
//		cout << "fail" << endl;
//	}*/
//
//	bool(Stack:: * pf)(Stack ) = nullptr;
//	pf = &Stack::operator==;
//
//	Stack st;
//
//	(st.*pf)(st);
//	return 0;
//}


//class Date
//{
//public:
//	Date(int year=1901,int mount=1,int day=1)
//	{
//		_year = year;
//		_mount = mount;
//		_day = day;
//	}
//
//	void Print()
//	{
//		cout << _year <<'/' << _mount <<'/' << _day << endl;
//	}
//
//	Date& operator+(int day)
//	{
//		int day1 = 0;
//		while (day > 30)
//		{
//			
//		}
//		_day = _day + day1;
//		return *this;
//	}
//
//private:
//	int _year;
//	int _mount;
//	int _day;
//};


//
//int main()
//{
//	/*Date da(2024,11,25);
//	da= (da + 100);
//	da.Print();*/
//
//	Date d1;
//	d1.Print();
//	Date d2(1,1,1);
//	d1 = d2;
//	d1.Print();
//	Date d3 = d2;
//
//
//	//(d1 = d2) = d3;
//	return 0;
//}

#include "date.h"

int main()
{
	Date d1(2024,11,25);
	d1.Print();

	Date d2 = d1 + 5000;
	d1 += 100;
	d1.Print();
	d2.Print();

	/*Date d1(2024, 7, 12);
	d1.Print();
	d1 -= 10000;
	d1.Print();
	Date d2 = d1 - 20000;
	d2.Print();*/
	return 0;
}